//package com.yunhe.device.service.base;
//
//import com.yunhe.common.model.PageParam;
//import com.yunhe.device.domain.base.BaseVoltage;
//import com.yunhe.common.exception.ArgumentErrorException;
//import com.yunhe.common.exception.ObjectNotFoundException;
//import com.yunhe.common.exception.UniqueConstraintsException;
//import org.springframework.transaction.annotation.Transactional;
//
//import java.util.List;
//import java.util.Optional;
//
///**
// * 基础电压Service
// * @desc 基础电压服务类定义
// * @author liuronglei
// */
//public interface BaseVoltageService {
//
//    /**
//     * 新增基础电压
//     * @param baseVoltage 新增对象
//     */
//    @Transactional
//    BaseVoltage createBaseVoltage(BaseVoltage baseVoltage)
//            throws ArgumentErrorException, UniqueConstraintsException;
//
//    /**
//     * 批量新增基础电压
//     * @param list 基础电压列表
//     */
//    @Transactional
//    Iterable<BaseVoltage> createBaseVoltage(List<BaseVoltage> list)
//            throws ArgumentErrorException, UniqueConstraintsException;
//
//    /**
//     * 根据id删除基础电压
//     * @param baseVoltageId id
//     */
//    @Transactional
//    void deleteBaseVoltage(Long baseVoltageId);
//
//    /**
//     * 根据代码删除基础电压
//     * @param code 代码
//     */
//    @Transactional
//    Long deleteBaseVoltageByCode(Long code);
//
//    /**
//     * 更新基础电压
//     * @param baseVoltage 要更新的基础电压对象
//     */
//    @Transactional
//    BaseVoltage updateBaseVoltage(BaseVoltage baseVoltage)
//            throws ArgumentErrorException, UniqueConstraintsException, ObjectNotFoundException;
//
//    /**
//     * 更新基础电压
//     * @param baseVoltageId id
//     * @param code 设备ID
//     * @param name 名称
//     * @param nomKV 电压值（kV）
//     */
//    @Transactional
//    BaseVoltage updateBaseVoltage(Long baseVoltageId,
//                                  Long code,
//                                  String name,
//                                  Double nomKV)
//            throws ArgumentErrorException, ObjectNotFoundException, UniqueConstraintsException;
//
//    /**
//     * 根据ID获得基础电压对象
//     * @param id id
//     */
//    BaseVoltage findByBaseVoltageId(Long id);
//
//    /**
//     * 根据代码获得基础电压对象
//     * @param code 代码
//     */
//    BaseVoltage findByCode(Long code);
//
//    /**
//     * 获得所有基础电压对象
//     * @param pageParam 分页对象
//     */
//    Iterable<BaseVoltage> findBaseVoltages(PageParam pageParam);
//
//}
